package com.itheima.homework10;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

/*
存在如下的元素数据，请根据需求，展示效果。

"黄药师", "冯蘅", "郭靖", "黄蓉", "郭芙", "郭襄", "郭破虏"

"陈玄风","梅超风","陆乘风","曲灵风","武眠风","冯默风","罗玉风"

	将第一排的数据，封装成为 Stream 流对象，对象名称叫做 sm1
	将第二排的数据，封装成为 Stream 流对象，对象名称叫做 sm2
	其中 sm1 需要跳过前面 2 个数据
	其中 sm2 需要截取前面 4 个数据
	将两个Stream流对象，进行合并的操作 ，合并之后的 Stream 流对象
	筛选出合并之后的流，当中姓名长度为 3个字的元素
	将获取到的合并之后流的元素转换成为 List<String> 集合
	循环遍历 List<String> 数据


 */
public class Test04 {
    public static void main(String[] args) {
        List<String> list1=new ArrayList<String >();
        list1.add("黄药师");
        list1.add("冯蘅");
        list1.add("郭靖");
        list1.add("黄蓉");
        list1.add("郭芙");
        list1.add("郭襄");
        list1.add("郭破虏");
        List<String> list2=new ArrayList<String >();
       list2.add("陈玄风");
       list2.add("梅超风");
       list2.add("陆乘风");
       list2.add("曲灵风");
       list2.add("武眠风");
       list2.add("冯默风");
       list2.add("罗玉风");
        Stream<String> sm1 = list1.stream();
        Stream<String> sm2 = list2.stream();
        Stream<String> stream1 = sm1.skip(2);
        Stream<String> stream2 = sm2.limit(4);
        List<String> list = Stream.concat(stream1, stream2).filter(s -> s.length() == 3).collect(Collectors.toList());
         list.forEach(s-> System.out.println(s));
    }
}
